Color image encoding and decoding method and apparatus using a correlation between chrominance components

ABSTRACT

A color image encoding and decoding method and apparatus use a correlation between chrominance components in order to improve coding efficiency. The color image decoding method includes: transforming chrominance components of a color image in each of two or more inter-prediction modes, calculating costs for the conversion values in each of the two or more inter-prediction modes using a predetermined cost function, selecting one of the two or more inter-prediction modes based on the calculation result, and outputting conversion values of the selected inter-prediction mode; entropy encoding the output conversion values.

This patent application is a divisional of U.S. patent application Ser.No. 11/219,735, filed on Sep. 7, 2005, which claims priority from KoreanPatent Application Nos. 10-2004-0116962, filed on Dec. 30, 2004, and10-2005-0027827 filed on Apr. 2, 2005, respectively, in the KoreanIntellectual Property Office. The entire disclosures of the priorapplications are hereby incorporated by reference in their entireties.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Apparatuses and methods consistent with the present invention relate toencoding and decoding of color image data, and more particularly, toencoding and decoding color image data having a YCbCr format into asmaller amount of data by searching for a correlation betweenchrominance components Cb and Cr of the color image data.

2. Description of Related Art

FIG. 1 is a diagram illustrating data constituting video having an RGBformat and video having an YCbCr format.

The RGB format represents color video, divides a chrominance componentof the color video into red (R), green (G), and blue (B) chrominancecomponents, and represents the R, G, and B chrominance components. Here,the R, G, and B chrominance components have the same amount of data. Forexample, when a macroblock has a size of 16×16, the R, G, and Bchrominance components have sizes of 16×16. However, the human eye ismore sensitive to luminance components representing brightness thanchrominance components representing colors. Thus, a format in whichcolor video is divided into luminance and chrominance components to berepresented may be used to reduce an amount of data. The YCbCr format issuch a format.

In the YCbCr format, a larger amount of data is allocated to luminancecomponents than chrominance components. Referring to FIG. 1, when theRGB format video of the 16×16 macroblock is represented as the YCbCrformat video in the 16×16 macroblock, the RGB format video isrepresented as a 16×16 luminance block and 8×8 chrominance blocks Cb andCr. Here, values of a luminance component Y and chrominance componentsCb and Cr are calculated through weighted combinations of R, G, and Bvalues. For example, the values of the luminance component Y and thechrominance components Cb and Cr are calculated using equations such asY=0.29900R+0.58700G+0.11400B, Cb=−0.16874R−0.33126G+0.50000B, andCr=0.50000R−0.41869G−0.08131B. As described above, color motion picturedata having an YCbCr format includes a luminance component and twochrominance components. When the color motion picture data is encoded,the luminance component and the two chrominance components areseparately encoded. In other words, the luminance component and the twochrominance components are encoded regardless of correlation between thetwo chrominance components.

FIG. 2 is a diagram of structures of color video data in 4:4:4, 4:2:2,and 4:2:0 formats.

When a motion picture is encoded, a color format of the motion pictureis represented by a rate of a luminance component and chrominancecomponents of pixels of the motion picture in a horizontal pixel line.Hereinafter, the luminance component is denoted Y, and the chrominancecomponents are denoted Cb and Cr. The luminance (brightness) of onepixel is represented with eight bits in the ITU-R Recommendation, andthe chrominance (color) of a pixel is represented with two chrominancecomponents Cb and Cr each having eight bits. A coordinate system forrepresenting colors is called a color space. In the Motion PictureExperts Group (MPEG) standards, a color format of a motion picture isrepresented using three 8-bit pieces of information, i.e., a luminancecomponent Y and chrominance components Cb and Cr.

When a color motion picture is represented using a luminance component Yand chrominance components Cb and Cr, several types of color formats canbe represented according to the rate of the luminance component Y andthe chrominance components Cb and Cr. In the case of different colorformats, luminance components Y of the different color formats are thesame, but chrominance components Cb and Cr of the different colorformats vary. Referring to FIG. 2, video having a 4:2:2 format isobtained by ½ downsampling chrominance components of a video having a4:4:4 format in a horizontal direction, and video having a 4:2:0 formatis obtained by ½ downsampling chrominance components of the video havingthe 4:2:2 format in a vertical direction.

As described above, in a conventional codec (MPEG, H.26x, VC1), RGBcolor video is converted into YCbCr color video to separate a luminancecomponent and chrominance components from the YCbCr color video so onseparately encode the luminance component and the chrominancecomponents. Here, color video may have several different formats, suchas 4:4:4, 4:2:2, and 4:2:0 formats, etc. In general, the conventionalcodec (MPEG, H.26x, VC1) receives video data having the 4:2:0 format toencode a luminance component Y and chrominance components Cb and Cr. Anexample of video data having the 4:2:0 format will now be described.

In a general method of encoding a motion picture, a luminance componentY and chrominance components Cb and Cr are encoded so as not to havetemporal and spatial redundancies. The spatial redundancy is removedthrough intra-prediction between a neighboring block and a currentblock, and the temporal redundancy is removed through inter-predictionbetween a previous picture and a current picture. Here, only adifference component between the neighboring block and the currentblock, and only a difference component between the previous picture andthe current picture, are encoded through the intra-prediction, so onimprove compression efficiency.

In other words, only predictions for removing the temporal and spatialredundancies of the luminance component Y and the chrominance componentsCb and Cr are performed. Redundancy removal using a correlation betweenthe luminance component Y and the chrominance components Cb and Cr isnot performed. However, when compressing high quality video such anH.264 high profile, the amount of data of the luminance component Y andthe chrominance components Cb and Cr increases. Thus, a method ofefficiently compressing high quality video is required.

SUMMARY OF THE INVENTION

The present invention provides a color image encoding and decodingmethod and apparatus by which a correlation between chrominancecomponents Cb and Cb of color image is searched for and used to reducean amount of data to be encoded so on improve encoding speed.

According to an aspect of the present invention, there is provided anencoding apparatus including: a chrominance component transformermultiplying chrominance components Cb and Cr of color video bypredetermined coefficients, combining the multiplication results togenerate a plurality of conversion values, selecting two of theconversion values having lowest costs calculated by a predetermined costfunction, and outputting the selected conversion values; and an entropycoder performing entropy coding on the selected conversion values.

The chrominance components Cb and Cr may be transformed and quantizedchrominance components. The encoding apparatus may further include atransformer and a quantizer transforming and quantizing the conversionvalues output from the chrominance component transformer, if thechrominance components Cb and Cr are non-transformed and non-quantizedchrominance components.

The chrominance component transformer may calculate the conversionvalues of the chrominance components Cb and Cr using the equationconversion value=a×Cb+b×Cr+c, wherein a, b and c are constants and aplurality of sets (a, b, c) are predetermined by a user. Thepredetermined cost function may be any one of a rate-distortion costfunction, a sum of absolute difference value function, a sum of absolutetransformed difference function, a sum of squared difference function,and a mean of absolute difference function.

The chrominance component transformer may include: a conversion valuecalculator multiplying the chrominance components Cb and Cr by aplurality of (a, b, c) coefficients, combining the multiplicationresults, and generating the conversion values; a cost calculatorcalculating the costs of the conversion values using the predeterminedcost function; and a determiner selecting and outputting the twoconversion values having the lowest costs.

The chrominance component transformer may run-length code information on(a, b, c) coefficients corresponding to the two conversion values havingthe two lowest costs.

According to another aspect of the present invention, there is providedan encoding method including: multiplying chrominance components Cb andCr of color video by predetermined coefficients, combining themultiplication results to generate a plurality of conversion values,selecting two of the conversion values having lowest costs calculated bya predetermined cost function, and outputting the selected conversionvalues; and performing entropy coding on the selected conversion values.

Multiplying the chrominance components Cb and Cr of the color video bythe predetermined coefficients, combining the multiplication results togenerate the plurality of conversion values, selecting the two of theconversion values having the lowest costs calculated by thepredetermined cost function, and outputting the selected conversionvalues may include: multiplying the chrominance components Cb and Cr bya plurality of (a, b, c) coefficients, combining the multiplicationresults, and generating the conversion values; calculating the costs ofthe conversion values using the predetermined cost function; andselecting and outputting the two conversion values having the lowestcosts.

Information on (a, b, c) coefficients corresponding to the twoconversion values having the two lowest costs may be run-length coded.

According to still another aspect of the present invention, there isprovided a decoding apparatus including: an entropy decoderentropy-decoding an encoded bitstream; and a chrominance componentinverse transformer bypassing the decoded data if the decoded data is aluminance component, and extracting information on coefficients by whichchrominance components Cb and Cr are multiplied and combined, in orderto generate and output original chrominance components Cb and Cr if thedecoded data is chrominance components.

The chrominance component inverse transformer may extract informationindicating which set of (a, b, c) coefficients are used to encode thechrominance components, in order to calculate the chrominance componentsCb and Cr, the information being run-length coded and transmitted.

According to yet another aspect of the present invention, there isprovided a decoding method including: entropy-decoding an encodedbitstream; and bypassing the decoded data if the decoded data is aluminance component, and extracting information on coefficients by whichchrominance components Cb and Cr are multiplied and combined, in orderto generate and output original chrominance components Cb and Cr if thedecoded data is chrominance components.

According to yet another aspect of the present invention, there isprovided an encoding apparatus for a color image, including: achrominance component transformer transforming chrominance components ofa color image in each of two or more inter-prediction modes, calculatingcosts for the conversion values in each of the two or moreinter-prediction modes using a predetermined cost function, selectingone of the two or more inter-prediction modes based on the calculationresult, and outputting conversion values of the selectedinter-prediction mode; and an entropy encoder entropy encoding theoutput conversion values.

The selection of one of the two or more inter-prediction modes may beperformed in the unit of a predetermined macroblock. Here, informationon the inter-prediction mode selected for the predetermined macroblockmay be coded in the unit of a predetermined group comprising a pluralityof blocks.

The information on the inter-prediction mode for the plurality of blocksof the predetermined group may be classified into a plurality of modeplanes, and the plurality of mode planes are coded.

The plurality of mode planes may include information on whether aninter-prediction mode corresponding to a current mode plane is appliedto each of the plurality of blocks.

A predetermined mode plane may be obtained by setting mode informationcorresponding to a block to which the inter-prediction modecorresponding to the current mode plane is applied to “1” and modeinformation corresponding to a block to which the inter-prediction modecorresponding to the current mode plane is not applied to “0.”

Inter-prediction mode information for the plurality of blocks of thepredetermined group may be classified into a plurality of mode planes ineach mode, the plurality of mode planes may be arranged in a determinedorder, information on a next mode plane may be transformed based on modeinformation on a previous mode plane, and the transformed mode plane maybe coded.

The plurality of mode planes may include information on whether aninter-prediction mode corresponding to a current mode plane is appliedto each of the plurality of blocks, and the next mode plane may betransformed by deleting information on a block to which aninter-prediction mode of the previous mode plane is applied frominformation on the next mode plane based on information on the previousmode plane.

A predetermined mode plane may be obtained by setting mode informationcorresponding to a block to which the inter-prediction modecorresponding to the current mode plane is applied to “1” and modeinformation corresponding to a block to which the inter-prediction modecorresponding to the current mode plane is not applied to “0.”

The deletion of the information on the block to which theinter-prediction mode of the previous mode plane is applied may beachieved by setting the information on the block to “0.”

The plurality of blocks may be macroblocks, and the predetermined groupmay be a picture.

The chrominance component transformer may include: an inter-predictionmode table storage storing an inter-prediction mode table comprising twoor more inter-prediction modes; a conversion value calculatorcalculating conversion values of chrominance components Cb and Cr of acolor image in each mode based on the inter-prediction mode table; and amode selector selecting an inter-prediction mode in which the conversionvalues have the lowest costs calculated by a predetermined costfunction.

The encoding apparatus may further include a run-length coder run-lengthcoding information on the selected inter-prediction mode.

According to yet another aspect of the present invention, there isprovided an encoding method for a color image, including: transformingchrominance components of a color image in each of two or moreinter-prediction modes, calculating costs for the conversion values ineach of the two or more inter-prediction modes using a predeterminedcost function, selecting one of the two or more inter-prediction modesbased on the calculation result, and outputting conversion values of theselected inter-prediction mode; and entropy encoding the outputconversion values.

According to yet another aspect of the present invention, there isprovided a decoding apparatus for an encoded color image, including: anentropy decoder entropy decoding an input bitstream; and a chrominancecomponent inverse transformer recovering original chrominance componentsbased on inter-prediction mode information applied to a current blockhaving a predetermined size, the inter-prediction mode information beingextracted from the input bitstream. Here, the inter-prediction modeinformation may indicate the inter-prediction mode of two or moreinter-prediction modes applied to the current block, and the originalchrominance components may be obtained from conversion valuescorresponding to the inter-prediction mode applied to the current block.

According to yet another aspect of the present invention, there isprovided a decoding method for a color image, including: entropydecoding an input bitstream; and recovering original chrominancecomponents based on inter-prediction mode information applied to acurrent block having a predetermined size, the inter-prediction modeinformation being extracted from the input bitstream. Here, theinter-prediction mode information may indicate the inter-prediction modeof two or more inter-prediction modes applied to the current block, andthe original chrominance components may be obtained from conversionvalues corresponding to the inter-prediction mode applied to the currentblock.

According to yet another aspect of the present invention, there isprovided a computer-readable recording medium having embodied thereon acomputer program for the encoding method.

According to yet another aspect of the present invention, there isprovided a computer-readable recording medium having embodied thereon acomputer program for the decoding method of claim.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and/or other aspects of the present invention will become moreapparent by describing in detail exemplary embodiments thereof withreference to the attached drawings in which:

FIG. 1 is a diagram of data constituting video having an RGB format andvideo having an YCbCr format;

FIG. 2 is a diagram of structures of video data having 4:4:4, 4:2:2, and4:2:0 formats;

FIG. 3 is a block diagram of an apparatus for encoding a motion pictureaccording to an exemplary embodiment of the present invention;

FIG. 4 is a diagram illustrating a calculation of chrominance componentconversion values according to an exemplary embodiment of the presentinvention;

FIG. 5 is a block diagram of a chrominance component transformer 330shown in FIG. 3;

FIG. 6 is a flowchart of an encoding method according to an exemplaryembodiment of the present invention;

FIG. 7 is a block diagram of a decoding apparatus according to anexemplary embodiment of the present invention;

FIG. 8 is a flowchart of a decoding method according to an exemplaryembodiment of the present invention;

FIG. 9 is a table showing an inter-prediction mode according to anexemplary embodiment of the present invention;

FIG. 10 is a table illustrating an inverse inter-prediction method withrespect to each inter-prediction mode;

FIG. 11 is a block diagram of the chrominance component transformer 330shown in FIG. 3 according to an exemplary embodiment of the presentinvention;

FIG. 12 is a block diagram of an inter-prediction mode selected for eachmacroblock in one picture;

FIGS. 13A through 13E are views showing inter-prediction mode planesaccording to an exemplary embodiment of the present invention;

FIGS. 14A through 14D are views illustrating a method of codinginter-prediction mode information according to an exemplary embodimentof the present invention;

FIG. 15 is a flowchart of a method of coding inter-prediction modeinformation according to an exemplary embodiment of the presentinvention; and

FIG. 16 is a flowchart of decoding method according to an exemplaryembodiment of the present invention.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS OF THE INVENTION

Hereinafter, exemplary embodiments of the present invention will bedescribed in detail with reference to the attached drawings.

FIG. 3 is a block diagram of an apparatus for encoding a motion pictureaccording to an exemplary embodiment of the present invention. Theapparatus includes a motion estimator 302, a motion compensator 304, anintra-predictor 306, a transformer 308, a quantizer 310, a rearranger312, an entropy coder 314, an inverse quantizer 316, an inversetransformer 318, a filter 320, and a frame memory 322.

The apparatus encodes macroblocks of a current picture in one of aplurality of encoding modes. For this purpose, the apparatus performsencoding in modes in which inter-prediction and intra-prediction areperformed to calculate rate-distortion costs (RDCosts). The apparatusdetermines a mode in which a lowest RDCost is calculated as an optimalmode and performs encoding in the optimal mode. Here, the rate (R)indicates a bit rate which is a number of bits used for encoding onemacroblock. Specifically, R is a value obtained by adding a number ofbits obtained by encoding a residual signal generated after theinter-prediction or the intra-prediction is performed and a number ofbits obtained by encoding motion vector. The distortion (D) indicates adifference between an original macroblock of video and a decodedmacroblock of video. Thus, D is a value obtained by decoding theoriginal macroblock.

However, the determination of the optimal encoding mode may be madeusing various methods as well as the calculation of the RDCosts. Inother words, calculation of the RDCosts and other costs may also beperformed using various methods. For example, examples of a usable costfunction include a sum of absolute difference value (SAD), a sum ofabsolute transformed difference (SATD), a sum of squared difference(SSD), a mean of absolute difference (MAD), a Lagrange function, and thelike.

For the inter-prediction, the motion estimator 302 searches a referencepicture for an estimation value of a macroblock of a current picture.The motion compensator 304 calculates an intermediate pixel value ofreference blocks searched in ½ or ¼ pixel units to determine a referenceblock data value. Therefore, the motion estimator 302 and the motioncompensator 304 perform the inter-prediction.

The intra-predictor 306 performs the intra-prediction for searching thecurrent picture for the estimation value of the macroblock of thecurrent picture. A determination is made on whether the inter-predictionor the intra-prediction is performed with respect to a currentmacroblock by determining an encoding mode in which the lowest of theRDCosts is calculated as an encoding mode of the current macroblock, soon encode the current macroblock.

As described above, if estimation data to which a macroblock of acurrent frame is to refer is searched by performing the inter-predictionor the intra-prediction, the estimation data is subtracted from themacroblock of the current picture, and then the subtraction result isinput to a chrominance component transformer 330. The chrominancecomponent transformer 330 receives chrominance components, converts thechrominance components into various conversion values according to achrominance component conversion method that will be described later,and selects two of the various conversion values. In a case where thechrominance component transformer 330 receives a luminance component,the chrominance component transformer 330 passes the luminancecomponent. The luminance component or the selected chrominancecomponents are input to and transformed by the transformer 308 and thenquantized by the quantizer 310. The result of subtracting a motionestimated reference block from the macroblock of the current frame iscalled a residual. Data input to the chrominance component transformer330 to reduce the amount of data during encoding is a residual value.The quantized residual value passes through the rearranger 312 and isencoded by the entropy encoder 314.

A quantized picture is decoded into the current picture by the inversequantizer 316 and the inverse transformer 318 to obtain a referencepicture to be used for the inter-prediction. The decoded current pictureis stored in a frame memory to be used for inter-prediction of a nextpicture. When the decoded picture passes through the filter 320, thedecoded picture becomes an original picture including a few encodingerrors.

The operation of the chrominance component transformer 330 will now bedescribed in detail. When the chrominance component transformer 330receives chrominance components Cb and Cr, the chrominance componenttransformer 330 calculates a conversion value using Equation 1:Conversion Value=a×Cb+b×Cr+c   (1)wherein a, b and c may be determined experimentally. For example, if (a,b, c) is (1, 0, 0), (0, 1, 0), (−1, 1, 0), or (1, 1, 0), the conversionvalue is Cb, Cr, −Cb+Cr, or Cb+Cr. Costs for Cb, Cr, −Cb+Cr, and Cb+Crare calculated. Calculation of the costs and cost functions used are asdescribed above. Two sets of (a, b, c) having the lowest value of thecalculated costs are selected and then input to the transformer 308. Forexample, if Cb and −Cb+Cr are selected, the transformer 308 converts Cband −Cb+Cr components. In this case, the cost is the lowest. Thus,values of Cb and −Cb+Cr are the lowest, and thus a bit rate required forencoding is low. In the case of a macroblock in the intra-prediction,(a, b, c) may be (−1, 1, 14), (1, 1, −250), (1, 0, 14), or (0, 1, 14).Even in the case of the macroblock in the intra-prediction, costs for apair of coefficients of (a, b, c) are calculated, and chrominancecomponents determined by (a, b, c) for which the cost is the lowest aresearched for and encoded.

The chrominance component transformer 330 may be positioned after thetransformer 308 and the quantizer 310. That is, costs are calculatedusing frequency transformed chrominance components Cb and Cr in afrequency domain, instead of a spatial domain, to perform rearrangementand entropy encoding.

FIG. 4 is a diagram illustrating calculation of chrominance componentconversion values according to an exemplary embodiment of the presentinvention. Referring to FIG. 4, one pixel value is read from each ofblocks Cb and Cr and multiplied by or added to (a, b, c) using Equation1 above to calculate conversion values.

FIG. 5 is a block diagram of the chrominance component transformer 330shown in FIG. 3.

The chrominance component transformer 330 includes a conversion valuecalculator 510, a cost calculator 520, and a determiner 530. When thechrominance components Cb and Cr are input, the conversion valuecalculator 510 calculates conversion values of all cases that may beobtained from coefficient sets of (a, b, c) using Equation 1 above. Thecost calculator 520 calculates costs for the conversion values. Thedeterminer 530 selects the two lowest of the costs to output conversionvalues having the two lowest costs.

FIG. 6 is a flowchart of an encoding method according to an exemplaryembodiment of the present invention.

When video data is input, in operations S610 and S620, motion estimationand motion prediction are performed in a case of inter-prediction. In acase of intra-prediction, motion estimation and motion prediction areomitted. Here, motion estimation and motion prediction are performed asdescribed with reference to FIG. 3. In operation S630, costs of allcases are calculated using predetermined coefficients (a, b, c) asdescribed above with reference to FIGS. 4 and 5. In operation S640, thetwo lowest values of the costs are selected. In operations S650, S660,and S670, the two lowest values are transformed, quantized, and entropycoded, respectively. Conventionally, the chrominance components Cb andCr are encoded using such a method. However, in the present invention,in operations S630 and 640, redundancy between the chrominancecomponents Cb and Cr is removed before encoding to reduce the number ofbits required for encoding.

The selected (a, b, c) coefficient information is encoded andtransmitted. Selected coefficient information for each macroblock isrecorded in a picture header to indicate which chrominance components ofeach macroblock are encoded and transmitted. In the above-describedinter-prediction, if first and third coefficients of coefficients (1, 0,0), (0, 1, 0), (−1, 1, 0), and (1, 1, 0) are selected, run-length codingis performed on the first and third coefficients.

In more detail, run-length coding is performed on selected coefficientinformation only when a chrominance component block is encoded. Here, aconventional syntax chrominance encoding block pattern or a coded blockpattern for chrominance (CBPC) may be used. When run-length coding isperformed, a number of bits allocated to “run” varies depending on howmany sets are used, and a number of bits allocated to “length” variesdepending on how much continuous run is coded into one. For example, ina case where a number of sets is four, i.e., S1, S2, S3, and S4, anumber of bits allocated to “run” is two bits, and a number of bitsallocated to “length” is five bits, one (run, length) is coded intoseven bits. Thus, if S1 is consecutively output eleven times, (S1, 10)is coded into “0001010.” Since selected (a, b, c) coefficientinformation of each macroblock is highly likely to have a similar valueto coefficient information of a neighboring macroblock, run-lengthcoding may be used to reduce the number of bits required for encoding.In addition, by using the chrominance encoding block pattern or CBPC,information for indicating whether a chrominance block is coded, inunits of blocks, is transmitted.

The (a, b, c) coefficient information selected for each macroblock ishighly likely to be similar for the neighboring macroblock. Thus,run-length coding may be used to reduce the number of bits required forencoding.

FIG. 7 is a block diagram of a decoding apparatus according to anexemplary embodiment of the present invention. Referring to FIG. 7, thedecoding apparatus includes an entropy decoder 702, a rearranger 704, aninverse quantizer 706, an inverse transformer 708, a chrominancecomponent inverse transformer 710, a motion compensator 712, anintra-predictor 714, a filter 716, and a frame memory 718. When anencoded bitstream is input to the decoding apparatus, the encodedbitstream is entropy decoded, rearranged, inverse-transformed, and inputto the chrominance component inverse transformer 710. In a case whereinput data is a luminance component, the luminance component isbypassed. In a case where the input data are chrominance components, thechrominance component inverse transformer 710 determines whichcoefficients (a, b, c) were used to encode the chrominance components,to thereby generate chrominance components Cb and Cr. Informationindicating which coefficients (a, b, c) were used to encode and transmitthe chrominance components is also run-length coded and transmitted.Thus, the chrominance component inverse transformer 710 decodes theinformation to generate the chrominance components Cb and Cr.Alternatively, the chrominance component inverse transformer 710 may bepositioned before the inverse quantizer 706 and the inverse transformer708.

FIG. 8 is a flowchart of a decoding method according to an exemplaryembodiment of the present invention.

In operation S810, entropy decoding is performed. In operation S820,inverse quantization is performed. In operation S830, inversetransformation is performed. In operation S840, received coefficientinformation (a, b, c) is decoded, a determination is made on whichcombination of chrominance components Cb and Cr was encoded, in order toinverse-transform the combination and obtain chrominance components Cband Cr. In operation S850, motion compensation is performed. In the caseof the intra-prediction, motion compensation is omitted.

An encoding method according to an exemplary embodiment of the presentinvention will now be described with reference to FIGS. 9 through 15.

FIG. 9 is a table showing an inter-prediction mode according to anexemplary embodiment of the present invention. Referring to FIG. 9, fiveinter-prediction modes, “0” through “4”, are set with respect to eachmacroblock. One of the inter-prediction modes is selected in the unit ofmacroblock as shown in FIG. 12. Cb and Cr blocks are replaced withconversion values “1” and “2” according to the selected mode and thetable shown in FIG. 9. Correlations between conversion values and Cb andCr values in the inter-prediction modes shown in FIG. 9 are exemplary.Alternatively, modes having other correlations may be added or modes maybe removed.

For example, if an inter-prediction mode selected with respect to apredetermined macroblock is “0,” the conversion value “1” is a Cb valueof the Cb block, and the conversion value “2” is a Cr value of the Crblock. Also, if the selected inter-prediction mode is “1”, theconversion value “1” is the Cb value of the Cb block, and the conversionvalue “2” is a value obtained by subtracting the Cr value of the Crblock from Cb′ that is a recovered Cb value. The use of the recovered Cbvalue and the Cr value in the inter-prediction mode shown in FIG. 9 isto further accurately decode the Cb and Cr values. Alternatively,instead of the recovered Cb and Cr values, original Cb and Cr values maybe used. Here, the recovered Cb and Cr values are obtained by convertingand quantizing the original Cb and Cr values and then inverse-quantizingand inverse-converting the original Cb and Cr values. The original Cband Cr values are Cb and Cr values that are not converted and quantized.

FIG. 10 is a table illustrating an inverse inter-prediction mode withrespect to the inter-prediction mode. Referring to FIG. 10, if theinverse inter-prediction mode with respect to one macroblock is “0,” Cband Cr values of the corresponding macroblock are obtained fromconversion values “1” and “2.” If the inverse inter-prediction mode is“1,” the Cb value of the corresponding macroblock is obtained from theconversion value “1,” but the Cr value is obtained from a value obtainedby subtracting a conversion value “2” (Cb′−Cr) from a recovered valueCb′ of the conversion value “1.” Here, the subtraction of the conversionvalue “2” from the recovered value Cb′ is because the conversion value“2” includes a value Cb′.

FIG. 11 is a block diagram of the chrominance component transformer 330shown in FIG. 3 according to an exemplary embodiment of the presentinvention.

The chrominance component transformer 330 includes a conversion valuecalculator 1110, an inter-prediction mode table storage 1112, a costcalculator 1120, a mode selection and conversion value output unit 1130,and a selection mode storage 1132.

When chrominance components Cb and Cr are input, the conversion valuecalculator 1110 calculates conversion values “1” and “2” with respect toeach inter-prediction mode stored in the inter-prediction mode tablestorage 1112. For example, the conversion value calculator 1110generates the conversion values “1” and “2” with respect to eachinter-prediction mode shown in FIG. 9. Also, in the present embodiment,the inter-prediction mode table is stored in the conversion valuecalculator 1110 and the inter-prediction mode table 1112. Alternatively,the inter-prediction mode table may be stored in a predetermined placeof the conversion value calculator 1110.

The cost calculator 1120 calculates cost with respect to conversionvalues calculated in each inter-prediction mode.

The mode selection and conversion value output unit 1130 selects aninter-prediction mode in which conversion values have lowest costs andoutputs the conversion values. For example, if the inter-prediction mode“1” is selected according to the inter-prediction mode table shown inFIG. 9, the mode selection and conversion value output unit 1130 outputsCb and Cb′−Cr values as the conversion values “1” and “2.”

The selection mode storage 1132 stores mode information for eachmacroblock selected by the mode selection and conversion value outputunit 1130. The mode information for each macroblock stored in theselection mode storage 1132 is used to generate an inter-prediction modetable in the unit of picture shown in FIG. 12. Also, in the presentexemplary embodiment, the mode information for each macroblock is storedin the selection mode storage 1132. However, the mode information foreach macroblock may be stored in a predetermined place of the modeselection and conversion value output unit 1132.

The conversion values output from the mode selection and conversionvalue output unit 1130 are output to the transformer 308 and thequantizer 310 so on be transformed and quantized.

As described above, a conversion value is determined depending on aselected mode. Encoding is performed depending on the determinedconversion value. Thus, a decoder must be informed of whichinter-prediction mode is selected for each macroblock. A method oftransmitting inter-prediction mode information selected for eachmacroblock will now be described with reference to FIGS. 12 through 14.

FIG. 12 is a view showing an inter-prediction mode selected for eachmacroblock in one picture. A value in each position is “0”, “1”, “2”,“3”, or “4” which indicates an inter-prediction mode applied to eachmacroblock corresponding to each position. For example, a value “0” inthe uppermost and leftmost position indicates that Cb and Cr values ofthe corresponding macroblock are replaced according to theinter-prediction mode “0” in the table shown in FIG. 9, i.e., theconversion value “1” is Cb and the conversion value “2” is Cr. Values“2” and “2” corresponding to macroblocks next to the macroblock in theuppermost and leftmost position indicate that Cb and Cr values of thecorresponding macroblocks are replaced according to the inter-predictionmode “2” shown in FIG. 9, i.e., the conversion value “1” is Cb and theconversion value “2” is Cb′+Cr.

FIGS. 13A through 13E are views showing an inter-prediction mode valueof each macroblock shown in FIG. 12 on each inter-prediction mode plane.

FIG. 13A shows a mode 0 plane which is rearranged so that a macroblockindicating the inter-prediction mode “0” in the inter-prediction modetable shown in FIG. 12 has a value “1” and the other macroblocks notindicating the inter-prediction mode “0” have values “0.” For example,values of first, fourth, fifth, seventh, eighth, tenth, and fourteenthmacroblocks having the inter-prediction mode value “0” in the uppermostposition are set to “1,” and values of the other macroblocks in theuppermost position are set to “0.”

FIG. 13B shows a mode 1 plane which is rearranged so that a macroblockindicating the inter-prediction mode “1” in the inter-prediction modetable shown in FIG. 12 has a value “1,” and the other macroblocks notindicating the inter-prediction mode “0” have values “0.” For example,values of sixth and ninth macroblocks having the inter-prediction modevalue “1” in the uppermost position are set to “1,” and the othermacroblocks in the uppermost position are set to “0.”

FIG. 13C shows a mode 2 plane which is rearranged so that a macroblockindicating the inter-prediction mode “2” in the inter-prediction modetable shown in FIG. 12 has a value “1” and the other macroblocks notindicating the inter-prediction mode “0” have values “0.” For example,values of second, third, thirteenth, fifteenth, seventeenth, eighteenth,nineteenth, twentieth, twenty first, and twenty second macroblockshaving the inter-prediction mode value “2” in the uppermost position areset to “1,” and the other macroblocks in the uppermost position are setto “0.”

FIG. 13D shows a mode 3 plane which is rearranged so that a macroblockindicating the inter-prediction mode “3” in the inter-prediction modetable shown in FIG. 12 has a value “1” and the other macroblocks notindicating the inter-prediction mode “0” have values “0.” For example,there is no macroblock having the inter-prediction mode value “3” in theuppermost position. Thus, all macroblocks are set to “0.”

FIG. 13E shows a mode 4 plane which is rearranged so that a macroblockindicating the inter-prediction mode “4” in the inter-prediction modetable shown in FIG. 12 has a value “1” and the other macroblocks notindicating the inter-prediction mode “0” have values “0.” For example,values of eleventh, twentieth, and sixteenth macroblocks having theinter-prediction mode value “4” in the uppermost position are set to“1,” and the other macroblocks in the uppermost position are set to “0.”

In a case where the inter-prediction mode table shown in FIG. 12 isdivided into the mode planes as shown in FIGS. 13A through 13E, thelength of 0 run becomes longer.

FIGS. 14A through 14D are views illustrating a method of encodinginter-prediction mode information according to an exemplary embodimentof the present invention. In other words, FIGS. 14A through 14D showmode planes which are transformed so that lengths of one run in the modeplanes shown in FIGS. 13A through 13E become longer using a mode planereduction scheme of the present invention.

FIG. 14A shows a transformed mode 1 plane in which values “0”corresponding to macroblocks having the inter-prediction mode value “1”in the mode 0 plane shown in FIG. 13A are deleted from the mode 1 planeshown in FIG. 13B. As shown in FIG. 14A, 22 bits,“0000010010000000000000”, in the uppermost position on the mode 1 planeshown in FIG. 13B are transformed into 15 bits, “001100000000000”, inwhich the values “0” of the first, fourth, fifth, seventh, eighth,tenth, and fourteenth macroblocks having the inter-prediction mode value“1” on the mode 0 plane are removed. The transformed mode 1 plane has alower bit rate and a longer run than the mode 1 plane.

FIG. 14B shows a transformed mode 2 plane in which the values “0”corresponding to the macroblocks having the inter-prediction mode value“1” on the mode 0 plane and the mode 1 plane are deleted from the mode 2plane shown in FIG. 13C. As shown in FIG. 14B, 22 bits,“0110000000001010111111”, in the uppermost position on the mode 2 planeshown in FIG. 13C are transformed into 13 bits, “1100110111111”, inwhich the values “0” of the first, fourth, fifth, seventh, eighth,tenth, and fourteenth macroblocks having the inter-prediction mode value“1” on the mode 0 plane and the values “0” of the sixth and ninthmacroblocks having the inter-prediction mode value “1” on the mode 1plane are removed. The transformed mode 2 plane has a lower bit rate anda longer run than the mode 2 plane.

FIG. 14C shows a transformed mode 3 plane in which the values “0”corresponding to the macroblocks having the inter-prediction mode value“1” on the mode 0 plane, the mode 1 plane, and the mode 2 plane aredeleted from the mode 3 plane shown in FIG. 13D. As shown in FIG. 14C,22 bits, “0000000000000000000000”, in the uppermost position on the mode3 plane shown in FIG. 13D are transformed into 3 bits, “000”, in whichthe values “0” of the first, fourth, fifth, seventh, eighth, tenth, andfourteenth macroblocks having the inter-prediction mode value “1” on themode 0 plane, the values “0” of the sixth and ninth macroblocks havingthe inter-prediction mode value “1” on the mode 1 plane, and the values“0” of the second, third, thirteenth, fifteenth, seventeenth,eighteenth, nineteenth, twentieth, twenty first, and twenty secondmacroblocks having the inter-prediction mode value “1” on the mode 2plane are removed. The transformed mode 3 plane has a lower bit rate anda longer run than the mode 3 plane.

FIG. 14D shows a transformed mode 4 plane in which the values “0”corresponding to the macroblocks having the inter-prediction mode value“1” on the mode 0 plane, the mode 1 plane, the mode 2 plane, and themode 3 plane are deleted from the mode 4 plane shown in FIG. 13E. Asshown in FIG. 14D, 22 bits, “0000000000110001000000”, in the uppermostposition on the mode 4 plane shown in FIG. 13D are transformed into 3bits, “111”, in which the values “0” of the first, fourth, fifth,seventh, eighth, tenth, and fourteenth macroblocks having theinter-prediction mode value “1” on the mode 0 plane, the values “0” ofthe sixth and ninth macroblocks having the inter-prediction mode value“1” on the mode 1 plane, and the values “0” of the second, third,thirteenth, fifteenth, seventeenth, eighteenth, nineteenth, twentieth,twenty first, and twenty second macroblocks having the inter-predictionmode value “1” on the mode 2 plane are removed. The transformed mode 4plane has a lower bit rate and a longer run than the mode 4 plane. Also,all values on the transformed mode 4 plane are “1.” Thus, encoding isnot required in the transformed mode 4 plane.

In the present exemplary embodiment, the mode 0 plane and thetransformed mode 1, 2, 3, and 4 planes having the longer run-lengths of“1” may be run-length coded and then transmitted. Thus, an amount ofdata to be transmitted can be reduced. Alternatively, the mode 0, 1, 2,3, and 4 planes may be run-length coded and then transmitted.

The decoder decodes the transformed mode 1, 2, 3, and 4 planes shown inFIGS. 14A through 14D to generate the mode 0, 1, 2, 3, and 4 shown inFIGS. 13A through 13E. The decoder also decodes the inter-predictionmode table shown in FIG. 12 based on the decoded mode 0, 1, 2, 3, and 4planes and decodes the original Cb and Cr values from the conversionvalues based on the decoded inter-prediction mode table.

FIG. 15 is a flowchart of a method of generating the transformed mode 1,2, 3, and 4 planes shown in FIGS. 14A through 14D and codinginter-prediction mode information according to an exemplary embodimentof the present invention.

In operation S1510, the mode 0 plane is run-length coded.

In operation S1520, the values “0” corresponding to the macroblockshaving the values “1” on the mode 0 plane are removed from the mode 1,2, 3, and 4 planes shown in FIGS. 13B through 13E and the firsttransformed mode planes are generated. The first transformed mode 1plane, i.e., the transformed mode 1 plane shown in FIG. 14A, isrun-length coded.

In operation S1530, the values “0” corresponding to the macroblockshaving the values “1” on the mode 1 plane are removed from the firsttransformed mode 2, 3, and 4 and second transformed mode planes aregenerated. The second transformed mode 2 plane, i.e., the transformedmode 2 plane shown in FIG. 14B, is run-length coded.

In operation S1540, the values “0” corresponding to the macroblockshaving the values “1” on the mode 2 plane are removed from the secondtransformed mode 3 and 4 planes and third transformed mode planes aregenerated. The third transformed mode 3 plane, i.e., the transformedmode 3 plane shown in FIG. 14C, is run-length coded.

In operation S1550, the values “1” on the mode 3 plane are removed fromthe third transformed mode 4 plane and a fourth transformed mode 4 planeis generated. The fourth transformed mode 4 plane, i.e., the transformedmode 3 plane shown in FIG. 14D, is run-length coded. Values in the lastmode plane are “1.” Thus, although the transformed mode 4 plane does notinclude information, original mode planes may be recovered usinginformation of the other transformed mode planes. Therefore, thetransformed mode 4 plane may not be additionally coded. Alternatively,operation S1550 may be skipped.

Alternatively, the transformed mode planes may be generated in differentorder from that in the present exemplary embodiment.

After operations S1510, S1520, S1540, and S1550 are performed,run-length coded inter-prediction information is inserted into a pictureheader of a bitstream and transmitted.

The inter-prediction using a correlation between chrominance componentsof a color image, i.e., between Cb and Cr, has been described in thepresent exemplary embodiment. However, the present invention may beapplied between two arbitrary domains in any color space so on improvecompression efficiency. For example, the present invention may beapplied to an inter-prediction using a correlation between domains inanother color space, i.e., between Y and Cb or Y and Cr in an YCbCrcolor space.

A decoder according to an exemplary embodiment of the present inventionwill now be described with reference to FIG. 7.

When a coded bitstream is input to the decoder, the bitstream is entropydecoded, rearranged, inverse-transformed, and input into the chrominancecomponent inverse transformer 708. If input data is a luminancecomponent, the input data is bypassed. If the input data is achrominance component, the input data is input into the chrominancecomponent inverse transformer 710.

An inter-prediction mode determiner (not shown) recovers run-lengthcoded mode planes extracted from the picture header of the inputbitstream in the order from the mode 0 plane, generates theinter-prediction mode table in the picture unit shown in FIG. 12,determines an inter-prediction mode applied to each macroblock based onthe inter-prediction mode table, and inputs the determinedinter-prediction mode into the chrominance component inverse transformer710.

The chrominance component inverse transformer 710 produces chrominancecomponents Cb and Cr from decoded conversion values using information onthe determined inter-prediction mode.

FIG. 16 is a flowchart of a decoding method according to an exemplaryembodiment of the present invention.

In operation S1610, entropy decoding is performed. In operation S1620,inverse quantization is performed. In operation 1630, inverse conversionis performed. Thereafter, original mode planes are recovered from thetransformed mode planes shown in FIG. 13. An inter-prediction mode tableindicating an inter-prediction mode applied to each macroblock in thepredetermined unit, e.g., the picture unit.

In operation S1640, an inter-prediction mode applied to a correspondingmacroblock is determined from the generated inter-prediction mode table,and decoded conversion values are inverse converted according to thedetermined inter-prediction mode to calculate the chrominance componentsCb and Cr. In operation S1650, motion compensation is performed toperform decoding. In the case of an intra-prediction, operation S1650 isomitted.

As described above, in a color image encoding and decoding method andapparatus using a correlation between chrominance components accordingto the present invention, a correlation between chrominance componentsof a motion picture can be found to remove unnecessary components. Thus,motion picture compression efficiency can be improved. In order toremove unnecessary components by searching for the correlation betweenthe chrominance components, coefficient information constituting acombination of chrominance components Cb and Cr can be run-length coded.Thus, the number of bits required for encoding can be greatly reduced.Also, chrominance components Cb and Cr can be transformed in eachinter-prediction mode. Information on a mode adopted for the conversioncan be divided into mode planes. The mode planes can be run-lengthcoded. As a result, further efficient run-length coding can be achieved.

The above-described encoding and decoding method can be written as acomputer program. Codes and code segments of the computer program can beeasily inferred by computer programmers skilled in the art to which thepresent invention pertains. The computer program can be stored incomputer-readable media and read and executed by a computer to performthe encoding and decoding method. Examples of the computer-readablemedia include magnetic recording media, optical recording media, andcarrier waves.

While the present invention has been particularly shown and describedwith reference to exemplary embodiments thereof, it will be understoodby those of ordinary skill in the art that various changes in form anddetails may be made therein without departing from the spirit and scopeof the present invention as defined by the following claims.

1. A decoding apparatus for decoding an encoded color image, thedecoding apparatus comprising: an entropy decoder which entropy decodesan input bitstream; and a chrominance component inverse transformerwhich recovers original chrominance components based on inter-predictionmode information applied to a current block having a predetermined size,the inter-prediction mode information being extracted from the inputbitstream, wherein the inter-prediction mode information indicates aninter-prediction mode which selected from among at least twointer-prediction modes and is applied to the current block, and theoriginal chrominance components are obtained from conversion valuescorresponding to the inter-prediction mode applied to the current block,wherein the inter-prediction mode information extracted from the inputbitstream is a plurality of mode planes into which inter-prediction modeinformation for a plurality of blocks is classified in each mode, andwherein the inter-prediction mode information extracted from the inputbitstream is a transformed mode plane generated by classifyinginter-prediction mode information for the plurality of blocks of thepredetermined group into a plurality of mode planes in each mode,arranging the plurality of mode planes in a determined order, andtransforming information on a next mode plane based on mode informationon a previous mode plane.
 2. The decoding apparatus of claim 1, whereinthe plurality of mode planes comprise information on whether aninter-prediction mode corresponding to a current mode plane is appliedto each of the plurality of blocks.
 3. The decoding apparatus of claim1, wherein a predetermined mode plane is obtained by setting modeinformation corresponding to a block to which the inter-prediction modecorresponding to the current mode plane is applied to “1” and settingmode information corresponding to a block to which the inter-predictionmode corresponding to the current mode plane is not applied to “0.” 4.The decoding apparatus of claim 1, wherein the plurality of mode planescomprise information on whether an inter-prediction mode correspondingto a current mode plane is applied to each of the plurality of blocks,and the next mode plane is transformed by deleting information on ablock to which an inter-prediction mode of the previous mode plane isapplied from information on the next mode plane based on information onthe previous mode plane, wherein the decoding apparatus decodes thetransformed mode planes in the determined order to recover original modeplanes.
 5. The decoding apparatus of claim 1, wherein a predeterminedmode plane is obtained by setting mode information corresponding to ablock to which the inter-prediction mode corresponding to the currentmode plane is applied to “1” and setting mode information correspondingto a block to which the inter-prediction mode corresponding to thecurrent mode plane is not applied to “0.”
 6. The decoding apparatus ofclaim 5, wherein the deletion of the information on the block to whichthe inter-prediction mode of the previous mode plane is applied isachieved by setting the information on the block to “0.”
 7. The decodingapparatus of claim 1, wherein the current block having the predeterminedsize is a macroblock, and the mode planes comprise inter-prediction modeinformation for a macroblock of a picture unit.
 8. The decodingapparatus of claim 1, wherein the decoding apparatus extractsinter-prediction mode information coded and transmitted according to arun-length coding method to calculate the chrominance components basedon the inter-prediction mode information.
 9. The decoding apparatus ofclaim 1, wherein the chrominance components are Cb and Cr.
 10. Thedecoding apparatus of claim 1, further comprising: an inverse quantizerinverse-quantizes decoded data; and an inverse transformer whichinverse-transforms the decoded data.
 11. The decoding apparatus of claim1, further comprising a motion compensator which performs aninter-prediction.
 12. A decoding method for decoding a color image, thedecoding method comprising: entropy decoding an input bitstream; andrecovering original chrominance components cased on inter-predictionmode information applied to a current block having a predetermined size,the inter-prediction mode information being extracted from the inputbitstream, wherein the inter-prediction mode information indicates aninter-prediction mode which is selected from among at least twointer-prediction modes and is applied to the current block, and theoriginal chrominance components are obtained from conversion valuescorresponding to the inter-prediction mode applied to the current block,wherein the inter-prediction mode information extracted from the inputbitstream is a plurality of mode planes into which inter-prediction modeinformation for a plurality of blocks is classified in each mode,wherein the inter-prediction mode information extracted from the inputbitstream is a transformed mode plane generated by classifyinginter-prediction mode information for the plurality of blocks of thepredetermined group into a plurality of mode planes in each mode,arranging the plurality of mode planes in a determined order, andtransforming information on a next mode plane based on mode informationon a previous mode plane.
 13. The decoding method of claim 12, whereinthe plurality of mode planes comprise information on whether aninter-prediction mode corresponding to a current mode plane is appliedto each of the plurality of blocks.
 14. The decoding method of claim 12,wherein a predetermined mode plane is obtained by setting modeinformation corresponding to a block to which the inter-prediction modecorresponding to the current mode plane is applied to “1” and settingmode information corresponding to a block to which the inter-predictionmode corresponding to the current mode plane is not applied to “0.” 15.The decoding method of claim 12, wherein the plurality of mode planescomprise information on whether an inter-prediction mode correspondingto a current mode plane is applied to each of the plurality of blocks,and the next mode plane is transformed by deleting information on ablock to which an inter-prediction mode of the previous mode plane isapplied from information on the next mode plane based on information onthe previous mode plane, wherein the transformed mode planes are decodedin the determined order to recover original mode planes.
 16. Thedecoding method of claim 15, wherein a predetermined mode plane isobtained by setting mode information corresponding to a block to whichthe inter-prediction mode corresponding to the current mode plane isapplied to “1” and setting mode information corresponding to a block towhich the inter-prediction mode corresponding to the current mode planeis not applied to “0.”
 17. The decoding method of claim 16, wherein thedeleting the information on the block to which the inter-prediction modeof the previous mode plane is applied is achieved by setting theinformation on the block to “0.”
 18. The decoding method of claim 12,wherein the current block having the predetermined size is a macroblock,and the mode planes comprise inter-prediction mode information for amacroblock of a picture unit.
 19. The decoding method of claim 12,wherein inter-prediction mode information coded and transmittedaccording to a run-length coding method is extracted to calculate thechrominance components based on the inter-prediction mode information.20. The decoding method of claim 12, wherein the chrominance componentsare Cb and Cr.
 21. The decoding method of claim 12, further comprisinginverse-quantizing and inverse-transforming decoded data.
 22. Thedecoding method of claim 12, further comprising performing aninter-prediction.
 23. A non-transitory computer-readable recordingmedium having embodied thereon a computer program for performing adecoding method for decoding a color image, the decoding methodcomprising: entropy decoding an input bitstream; and recovering originalchrominance components based on inter-prediction mode informationapplied to a current block having a predetermined size, theinter-prediction mode information being extracted from the inputbitstream, wherein the inter-prediction mode information indicates aninter-prediction mode which is selected from among at least twointer-prediction modes and is applied to the current block, and theoriginal chrominance components are obtained from conversion valuescorresponding to the inter-prediction mode applied to the current block,wherein the inter-prediction mode information extracted from the inputbitstream is a plurality of mode planes into which inter-prediction modeinformation for a plurality of blocks is classified in each mode,wherein the inter-prediction mode information extracted from the inputbitstream is a transformed mode plane generated by classifyinginter-prediction mode information for the plurality of blocks of thepredetermined group into a plurality of mode planes in each mode,arranging the plurality of mode planes in a determined order, andtransforming information on a next mode plane based on mode informationon a previous mode plane.
 24. The non-transitory computer-readablerecording medium of claim 23, wherein, in each of the plurality of modeplanes, inter-prediction mode information for a plurality of blocks isclassified in each mode.
 25. The non-transitory computer-readablerecording medium of claim 24 currently amended, wherein the plurality ofmode planes comprise information on whether an inter-prediction modecorresponding to a current mode plane is applied to each of theplurality of blocks.
 26. The non-transitory computer-readable recordingmedium of claim 24, wherein a predetermined mode plane is obtained bysetting mode information corresponding to a block to which theinter-prediction mode corresponding to the current mode plane is appliedto “1” and setting mode information corresponding to a block to whichthe inter-prediction mode corresponding to the current mode plane is notapplied to “0.”
 27. The computer-readable recording medium of claim 24,wherein the inter-prediction mode information extracted from the inputbitstream is a transformed mode plane generated by classifyinginter-prediction mode information for the plurality of blocks of thepredetermined group into a plurality of mode planes in each mode,arranging the plurality of mode planes in a determined order, andtransforming information on a next mode plane based on mode informationon a previous mode plane.
 28. The non-transitory computer-readablerecording medium of claim 27, wherein the plurality of mode planescomprise information on whether an inter-prediction mode correspondingto a current mode plane is applied to each of the plurality of blocks,and the next mode plane is transformed by deleting information on ablock to which an inter-prediction mode of the previous mode plane isapplied from information on the next mode plane based on information onthe previous mode plane, wherein the transformed mode planes are decodedin the determined order to recover original mode planes.
 29. Thenon-transitory computer-readable recording medium of claim 28, wherein apredetermined mode plane is obtained by setting mode informationcorresponding to a block to which the inter-prediction modecorresponding to the current mode plane is applied to “1” and settingmode information corresponding to a block to which the inter-predictionmode corresponding to the current mode plane is not applied to “0.” 30.The non-transitory computer-readable recording medium of claim 29,wherein the deleting the information on the block to which theinter-prediction mode of the previous mode plane is applied is achievedby setting the information on the block to “0.”